iOS应用之间跳转 报错:This app is not allowed to query for scheme

作者 john 日期 2016-11-23 阅读量
iOS
iOS应用之间跳转 报错:This app is not allowed to query for scheme

Mark:

关于应用之间跳转,核心代码是:

1
[[UIApplication sharedApplication] openURL:url]

但是在试图打开这个url之前,应该先判断一下设备上是否安装了该url对应的APP,如果存在,打开APP,如果不存在,则做出相应处理:

1
BOOL isExist = [[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"iosamap://"]]

Question:

问题是 这个方法出现的如下错误:

1
-canOpenURL: failed for URL: "iosamap://" - error: "This app is not allowed to query for scheme iosamap"

根据错误日志,我们且翻译成:当前APP不被允许调用iosamap这个scheme

Solution:

所以我们引入 白名单 的概念,在项目的info.plist文件中,添加scheme白名单:

这里写图片描述

好了,问题解决